home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / Information / CSMP Digest / volume 1 / csmp-v1-135.txt < prev    next >
Encoding:
Text File  |  1994-12-08  |  41.0 KB  |  1,061 lines  |  [TEXT/R*ch]

  1. C.S.M.P. Digest             Tue, 07 Jul 92       Volume 1 : Issue 135
  2.  
  3. Today's Topics:
  4.  
  5.     C++ Critique in comp.lang.c++
  6.     Drawing on the MeNuBaR!
  7.     Latest Inside Mac Printings?
  8.  
  9.  
  10.  
  11. -------------------------------------------------------
  12.  
  13. From: ian@syacus.acus.oz.au (Ian Joyner)
  14. Subject: C++ Critique in comp.lang.c++
  15. Date: 8 Apr 92 12:17:26 GMT
  16. Organization: ACUS Australian Centre for Unisys Software, Sydney
  17.  
  18. Have Apple made a mistake by adopting the C++ route. I have posted a critique
  19. in comp.lang.c++ which may help answer such questions.
  20. - -- 
  21. Ian Joyner                                     ACSNet: ian@syacus.acus.oz
  22. ACUS (Australian Centre for Unisys Software)   Internet: ian@syacus.acus.oz.au
  23. Tel 61-2-390 1328      Fax 61-2-390 1391       UUCP: ...uunet!munnari!syacus.oz
  24.  
  25. +++++++++++++++++++++++++++
  26.  
  27. From: ksand@apple.com (Kent Sandvik)
  28. Date: 11 Apr 92 23:47:30 GMT
  29. Organization: MacDTS Mongols
  30.  
  31. In article <1992Apr8.121726.17568@syacus.acus.oz.au>, ian@syacus.acus.oz.au (Ian
  32. Joyner) writes:
  33. > Have Apple made a mistake by adopting the C++ route. I have posted a critique
  34. > in comp.lang.c++ which may help answer such questions.
  35.  
  36. You might as well ask why the whole PC computing industry has made a
  37. mistake by adopting C++. We are not alone in the same boat...
  38.  
  39. Cheers,
  40. Kent Sandvik, Dynamic Language Evangelist (all those Algol-based languages
  41. are the same anyway).
  42.  
  43. +++++++++++++++++++++++++++
  44.  
  45. From: quinn@cs.uwa.edu.au (Quinn "The Eskimo!")
  46. Organization: The University of Western Australia
  47. Date: Tue, 14 Apr 1992 01:08:18 GMT
  48.  
  49. In article <22965@goofy.Apple.COM>, ksand@apple.com (Kent Sandvik) writes:
  50. > In article <1992Apr8.121726.17568@syacus.acus.oz.au>, ian@syacus.acus.oz.au (Ian
  51. > Joyner) writes:
  52. > > 
  53. > > Have Apple made a mistake by adopting the C++ route. I have posted a critique
  54. > > in comp.lang.c++ which may help answer such questions.
  55. > You might as well ask why the whole PC computing industry has made a
  56. > mistake by adopting C++. We are not alone in the same boat...
  57.                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  58. Great, we're not the only people on the Titanic!  Reminds me of the old
  59. Tom Lehrer song "We'll All Go Together When We Go".
  60.  
  61. > Cheers,
  62. > Kent Sandvik, Dynamic Language Evangelist
  63. >(all those Algol-based languages are the same anyway).
  64.  
  65. "True but probably irrelevant."
  66.  
  67. Quinn "The Eskimo!"   <quinn@cs.uwa.edu.au>  "Real Coke, Diet .sig"
  68. Department of Computer Science, The University of Western Australia
  69.   -- Looking for a good book on Eiffel.
  70.  
  71.  
  72. +++++++++++++++++++++++++++
  73.  
  74. From: ian@syacus.acus.oz.au (Ian Joyner)
  75. Organization: ACUS Australian Centre for Unisys Software, Sydney
  76. Date: Sat, 18 Apr 1992 13:09:53 GMT
  77.  
  78. ksand@apple.com (Kent Sandvik) writes:
  79.  
  80. >In article <1992Apr8.121726.17568@syacus.acus.oz.au>, ian@syacus.acus.oz.au (Ian
  81. >Joyner) writes:
  82. >> 
  83. >> Have Apple made a mistake by adopting the C++ route. I have posted a critique
  84. >> in comp.lang.c++ which may help answer such questions.
  85.  
  86. >You might as well ask why the whole PC computing industry has made a
  87. >mistake by adopting C++. We are not alone in the same boat...
  88.  
  89. Kent,
  90.  
  91. Maybe it's because we don't expect any better of the PC industry, but
  92. expect Apple to do something better.
  93. - -- 
  94. Ian Joyner                                     ACSNet: ian@syacus.acus.oz
  95. ACUS (Australian Centre for Unisys Software)   Internet: ian@syacus.acus.oz.au
  96. 115-117 Wicks Rd, North Ryde, N.S.W, Australia 2113.
  97. Tel 61-2-390 1328      Fax 61-2-390 1391       UUCP: ...uunet!munnari!syacus.oz
  98.  
  99. +++++++++++++++++++++++++++
  100.  
  101. From: ksand@apple.com (Kent Sandvik)
  102. Date: 21 Apr 92 19:01:48 GMT
  103. Organization: MacDTS Mongols
  104.  
  105. In article <1992Apr18.130953.27814@syacus.acus.oz.au>, ian@syacus.acus.oz.au
  106. (Ian Joyner) writes:
  107. > >You might as well ask why the whole PC computing industry has made a
  108. > >mistake by adopting C++. We are not alone in the same boat...
  109.  
  110. > Maybe it's because we don't expect any better of the PC industry, but
  111. > expect Apple to do something better.
  112.  
  113. These are my personal opinions, either we could go out there and launch
  114. a new language, or then our developers are screaming about problems with
  115. cross-platform work and we need to implement/use a language which works on most
  116. platforms. This is more of a political issue, than  'may the best language 
  117. rule'. 
  118.  
  119. Sorry, the commercial computing world is ruled by $$$, not academical
  120. and computer science issues. Otherwise most if not all Algol style languages 
  121. should be dead by now, and we would use object oriented dynamic languages.
  122.  
  123. Personally I don't care what language a developer uses, as long as the
  124. application/hack is cool and end users love it. But true, a really
  125. revolutionary language would certainly spawn off more intriguing applications,
  126. in a quicker time frame. I don't see any such languages in the near horizon,
  127. for instance Eiffel and Modula-3 are still same old Algol compiler/linker
  128. static typing languages which certainly are not suitable for component SW.
  129.  
  130. Anyway, this starts to be something not related to c.s.m.p, so either 
  131. we could take this offline, or move the discussion to comp.programming.
  132.  
  133. Cheers,
  134. Kent
  135.  
  136. +++++++++++++++++++++++++++
  137.  
  138. From: Thad.Humphries@p950.f70.n109.z1.fidonet.org (Thad Humphries)
  139. Date: Wed, 22 Apr 1992 19:47:51 -0500
  140.  
  141.   KS> Sorry, the commercial computing world is ruled by $$$, not academical
  142.   KS> and computer science issues. Otherwise most if not all Algol style
  143.   KS> languages
  144.   KS> should be dead by now, and we would use object oriented dynamic
  145.   KS> languages.
  146.  
  147. My geneology might be off but isn't Algol->Pascal->Ada one language family
  148. branch? I know the CS and SE departments at George Mason would disagree if you
  149. count Ada as an Algol style language.  They aren't keen on my proposal to write
  150. my MS thesis in THINK C but it sure beats the pants off Meridian Ada.
  151.  
  152.  
  153. +++++++++++++++++++++++++++
  154.  
  155. From: rjohnson@cc.gatech.edu (Ray Johnson)
  156. Organization: Georgia Institute of Technology
  157. Date: Thu, 23 Apr 1992 14:40:10 GMT
  158.  
  159. In article <704016189.F00002@blkcat.UUCP> Thad.Humphries@p950.f70.n109.z1.fidonet.org (Thad Humphries) writes:
  160. >
  161. >  KS> Sorry, the commercial computing world is ruled by $$$, not academical
  162. >  KS> and computer science issues. Otherwise most if not all Algol style
  163. >  KS> languages
  164. >  KS> should be dead by now, and we would use object oriented dynamic
  165. >  KS> languages.
  166. >
  167.  
  168. Who said this?  I agree that the commercial world is ruled by money.
  169. However, it is the large investment in existing software that has
  170. kept languages like Fortran and Cobal alive all these years.  Sure,
  171. much of the commerical world would like to use OO dynamic languages
  172. but the economical costs of changing all libraries etc. is just too
  173. high.
  174.  
  175.  
  176.  
  177. - ------------------------------------------------------------------------------
  178. Raymond W. Johnson
  179. Graphics, Visualization, and Usability Center
  180. College of Computing
  181. Georgia Institute of Technology
  182. 801 Atlantic Drive                                       (404) 894-6266 (Work)
  183. Atlanta, GA 30332-0280                                   (404) 875-8380 (Home)
  184.  
  185. +++++++++++++++++++++++++++
  186.  
  187. From: lkimes@alshain.usc.edu (Lance 'Moof' Kimes)
  188. Date: 23 Apr 1992 16:30:05 -0700
  189. Organization: University of Southern California, Los Angeles, CA
  190.  
  191.  
  192. In article <1992Apr23.144010.22384@cc.gatech.edu>, rjohnson@cc.gatech.edu (Ray Johnson) writes:
  193. |> In article <704016189.F00002@blkcat.UUCP> Thad.Humphries@p950.f70.n109.z1.fidonet.org (Thad Humphries) writes:
  194. |> >
  195. |> >  KS> Sorry, the commercial computing world is ruled by $$$, not academical
  196. |> >  KS> and computer science issues. Otherwise most if not all Algol style
  197. |> >  KS> languages
  198. |> >  KS> should be dead by now, and we would use object oriented dynamic
  199. |> >  KS> languages.
  200. |> >
  201. |> 
  202. |> Who said this?  I agree that the commercial world is ruled by money.
  203. |> However, it is the large investment in existing software that has
  204. |> kept languages like Fortran and Cobal alive all these years.  Sure,
  205. |> much of the commerical world would like to use OO dynamic languages
  206. |> but the economical costs of changing all libraries etc. is just too
  207. |> high.
  208. |> 
  209.  
  210. I think you miss understand his posting, because you both are saying essentially the
  211. same thing(ie. that coporations are not willing to give up using older languages
  212. because they have invested a lot of money in them.)
  213.  
  214. Lets take the time to read these article, instead of seeing one word we don't like
  215. and starting a flame war, especially when both parties already agree.
  216.  
  217. Lance Kimes
  218. USC
  219.  
  220. +++++++++++++++++++++++++++
  221.  
  222. From: ksand@apple.com (Kent Sandvik)
  223. Date: 26 Apr 92 00:49:25 GMT
  224. Organization: MacDTS Mongols
  225.  
  226. In article <1992Apr23.144010.22384@cc.gatech.edu>, rjohnson@cc.gatech.edu (Ray
  227. Johnson) writes:
  228.  
  229. > In article <704016189.F00002@blkcat.UUCP>
  230. Thad.Humphries@p950.f70.n109.z1.fidonet.org (Thad Humphries) writes:
  231.  
  232. > >  KS> Sorry, the commercial computing world is ruled by $$$, not academical
  233. > >  KS> and computer science issues. Otherwise most if not all Algol style
  234. > >  KS> languages
  235. > >  KS> should be dead by now, and we would use object oriented dynamic
  236. > >  KS> languages.
  237.  
  238. > Who said this?  I agree that the commercial world is ruled by money.
  239. > However, it is the large investment in existing software that has
  240. > kept languages like Fortran and Cobal alive all these years.  Sure,
  241. > much of the commerical world would like to use OO dynamic languages
  242. > but the economical costs of changing all libraries etc. is just too
  243. > high.
  244.  
  245. OK, I need to clarify my point. I've seen N times the same argument
  246. that language X stinks, and that language Y has features such as
  247. XYZ which beats X's feature set any time.
  248.  
  249. That's great. However, we have to look at the practical point of
  250. the commercial software industry. A project manager would have
  251. a heart attack if the programmers demanded a new language every year.
  252.  
  253. One reason C++ took off was that many companies switched over to C 
  254. use, especially in the PC world, and it's a very smooth transition to
  255. get over to the OOP world by converting over to C++ from C. I don't 
  256. actually mind about this matter, C++ is certainly better than C in
  257. many cases (data abstraction, inheritance, framework design).
  258.  
  259. However, if we are looking at cost reductions concerning *huge* applications,
  260. C++ will never provide us with those figures. There's a need for 
  261. a new paradigm in computing, something OOP:ish, something dynamic,
  262. and something easy to learn. Also, if we want to take the next
  263. step where we want to create constraints based applications, and 
  264. intelligent agents, we need better tools for this. Finally
  265. if we want to move to the golden era of software component, we
  266. certainly needs more dynamic handling in the language.
  267.  
  268. Eiffel is a nice language, but it does not solve the problems in the long
  269. term, we need to achieve a 10 or 100 times bigger change, instead of just 
  270. switching from one Algol-style language to a better one.
  271.  
  272. End of my preaching :-).
  273.  
  274. Cheers,
  275. Kent
  276.  
  277. +++++++++++++++++++++++++++
  278.  
  279. From: ian@syacus.acus.oz.au (Ian Joyner)
  280. Organization: ACUS Australian Centre for Unisys Software, Sydney
  281. Date: Wed, 29 Apr 1992 03:21:38 GMT
  282.  
  283. (If anyone hasn't seen the referenced critique yet, you may obtain it from
  284. ian@syacus.acus.oz.au, or reply to this posting)
  285.  
  286. ksand@apple.com (Kent Sandvik) writes:
  287.  
  288. >> >  KS> Sorry, the commercial computing world is ruled by $$$, not academical
  289. >> >  KS> and computer science issues. Otherwise most if not all Algol style
  290. >> >  KS> languages
  291. >> >  KS> should be dead by now, and we would use object oriented dynamic
  292. >> >  KS> languages.
  293.  
  294. Precisely, that is why we should stop mucking around with C and C++
  295. style languages, which end up costing us immeasurable heaps. If we
  296. are going to realise the benefits of OO then it should be done properly,
  297. and get away from the 25 year old error prone practices of C. This is
  298. not an academic, or computer science issue, the base line is how to
  299. produce software that works in a timely and economic fasion.
  300.  
  301. >OK, I need to clarify my point. I've seen N times the same argument
  302. >that language X stinks, and that language Y has features such as
  303. >XYZ which beats X's feature set any time.
  304.  
  305. You are talking about religious/academic arguments. That is why in
  306. the critique, I tried to make it practical, and to illustrate how
  307. language features DO affect day to day practice.
  308.  
  309. >That's great. However, we have to look at the practical point of
  310. >the commercial software industry. A project manager would have
  311. >a heart attack if the programmers demanded a new language every year.
  312.  
  313. >One reason C++ took off was that many companies switched over to C 
  314. >use, especially in the PC world, and it's a very smooth transition to
  315. >get over to the OOP world by converting over to C++ from C.
  316.  
  317. But what you show here is that things do change over time. Perhaps
  318. the FORTRAN bases lost out to C over ten years. But now C is old
  319. creaking at the knees and has too many problems to be redeemable,
  320. even by adding support for OO. As computer professionals, we should
  321. monitor improvements, and decide when is an appropriate time to change,
  322. and not just go with a fad. We are at a time now, when to get away from
  323. the C++ mess, it would be a good time to examine, and plan how to
  324. bring about changes in the next 2 to 10 years.
  325.  
  326. It's also a very debatable point as to whether C to C++ is a smooth
  327. transition. In our experience this is not so. Most people just compile
  328. their C with a C++ compiler, and hey presto, suddenly they are claiming
  329. to be doing object-oriented programming. C++'s implementation of OO
  330. is much to obscure for such a smooth transition, and that's on top
  331. of having to adjust mental processes to the OO paradigm.
  332.  
  333. >Eiffel is a nice language, but it does not solve the problems in the long
  334. >term, we need to achieve a 10 or 100 times bigger change, instead of just 
  335. >switching from one Algol-style language to a better one.
  336.  
  337. If you are going to wait for something that makes 10 to 100 times
  338. improvements, you are going to be waiting forever.  Eiffel is
  339. significantly better that C++ in many respects.  It actually has
  340. sharable and reusable libraries that you can talk about.  Adopting such
  341. a language as Eiffel will definately be a step (or leap) in the right
  342. direction, but don't expect the hard problems of programming to suddenly
  343. become simple, just a bit more understandable. 
  344.  
  345. I also don't know what you mean by Algol-style languages. Are you talking
  346. about syntax style, semantic concepts, block structured, or what? I
  347. think many languages adopt elements of Algol, and may be thus classified
  348. as algol-style. The algol heritage is quite a rich one, and you will not
  349. be able to write off a language because it's 'algol-style'.
  350.  
  351. And you thought Kent could preach :-)
  352. - -- 
  353. Ian Joyner                                     ACSNet: ian@syacus.acus.oz
  354. ACUS (Australian Centre for Unisys Software)   Internet: ian@syacus.acus.oz.au
  355. 115-117 Wicks Rd, North Ryde, N.S.W, Australia 2113.
  356. Tel 61-2-390 1328      Fax 61-2-390 1391       UUCP: ...uunet!munnari!syacus.oz
  357.  
  358. +++++++++++++++++++++++++++
  359.  
  360. From: ksand@apple.com (Kent Sandvik)
  361. Date: 12 May 92 04:09:16 GMT
  362. Organization: MacDTS Mongols
  363.  
  364. In article <1992Apr29.032138.23339@syacus.acus.oz.au>, ian@syacus.acus.oz.au
  365. (Ian Joyner) writes:
  366. > ksand@apple.com (Kent Sandvik) writes:
  367. > >Eiffel is a nice language, but it does not solve the problems in the long
  368. > >term, we need to achieve a 10 or 100 times bigger change, instead of just 
  369. > >switching from one Algol-style language to a better one.
  370. > If you are going to wait for something that makes 10 to 100 times
  371. > improvements, you are going to be waiting forever.  Eiffel is
  372. > significantly better that C++ in many respects.  It actually has
  373. > sharable and reusable libraries that you can talk about.  Adopting such
  374. > a language as Eiffel will definately be a step (or leap) in the right
  375. > direction, but don't expect the hard problems of programming to suddenly
  376. > become simple, just a bit more understandable. 
  377.  
  378. Yes, I'm speaking for a language/environment which is 10..100 times better
  379. than C/C++ and Eiffel. Bill Joy, another proponent of really-high level
  380. languages once stated, that if an improvement in the computing field is
  381. twice, or less than ten times better than an old one, it's not worth
  382. pursuing. I agree, it's time to leave the statically typed languages
  383. into the realms of embedded systems and time-critical real-time environments.
  384.  
  385. Application development should be as painless as jamming in a studio. That's
  386. the way we will create the super-applications of the future - not by 
  387. switching from a lesser object oriented static language to the slightly 
  388. better static one.
  389.  
  390. Eiffel is still suffering from the lack of decent runtime binding
  391. dynamics (we are not talking about shareable libraries, we are 
  392. talking about dynamically changed libraries), or functions as first class 
  393. members, or a meta-object protocol, or small/simple building block systems, 
  394. or component based document programming, or... (I could go on...)
  395.  
  396. > I also don't know what you mean by Algol-style languages. Are you talking
  397. > about syntax style, semantic concepts, block structured, or what? I
  398. > think many languages adopt elements of Algol, and may be thus classified
  399. > as algol-style. The algol heritage is quite a rich one, and you will not
  400. > be able to write off a language because it's 'algol-style'.
  401.  
  402. The inheritance tree of Algol spawns widely across the range of computer
  403. languages, all the way to C, C++, Pascal and Eiffel. I'm talking about
  404. another strand of software languages based on either LISP or Smalltalk
  405. derivates. Even better, take the two nice things from LISP and Smalltalk,
  406. dynamic binding and object messages, and you start to have a real
  407. killer language. And as for parenthesis, that's a syntax issue, and we
  408. should really look into semantic issues.
  409.  
  410. > And you thought Kent could preach :-)
  411.  
  412. Sorry, I'm an agnostic :-).
  413.  
  414. Cheers,
  415. Kent
  416. Dynamic Languages is the future, leave static languages to AT&T, Ericsson
  417. and General Electrics.
  418.  
  419. +++++++++++++++++++++++++++
  420.  
  421. From: steve@oceania.com (Steve Dakin)
  422. Organization: Oceania Health Care Systems
  423. Date: Thu, 14 May 92 19:40:14 GMT
  424.  
  425. In article <24774@goofy.Apple.COM> ksand@apple.com (Kent Sandvik) writes:
  426.  
  427. > Even better, take the two nice things from LISP and Smalltalk,
  428. > dynamic binding and object messages, and you start to have a real
  429. > killer language.
  430.  
  431. It sounds like you are talking about Objective-C...
  432.  
  433. > And as for parenthesis, that's a syntax issue, and we
  434. > should really look into semantic issues.
  435.  
  436. How do you feel about brackets? ([...])
  437.  
  438. - -- 
  439.     Steve Dakin                        Oceania Health Care Systems 
  440.  steve@oceania.com (NeXT mail)         Palo Alto, CA (415) 322-0127
  441.  jester@oceania.com
  442.  
  443. +++++++++++++++++++++++++++
  444.  
  445. From: amanda@visix.com (Amanda Walker)
  446. Organization: Visix Software Inc., Reston, VA
  447. Date: Fri, 15 May 92 22:33:08 GMT
  448.  
  449. ksand@apple.com (Kent Sandvik) writes:
  450. > Even better, take the two nice things from LISP and Smalltalk,
  451. > dynamic binding and object messages, and you start to have a real
  452. > killer language.
  453.  
  454. Ever looked at Self?  It's waaaaaaaay cool.  And it would be a natural on
  455. the Macintosh...  Sort of a "RISC SmallTalk" with a killer incremental
  456. compiler.
  457.  
  458.  
  459. Amanda Walker                        amanda@visix.com
  460. Visix Software Inc.                     +1 800 832 8668
  461. - -- 
  462. "It was supposed to be a devastatingly withering and dismissive
  463.  remark.  I'll just have to try harder next time."
  464.         -- Steve Dyer
  465.  
  466. +++++++++++++++++++++++++++
  467.  
  468. From: ksand@apple.com (Kent Sandvik)
  469. Date: 16 May 92 23:19:51 GMT
  470. Organization: MacDTS Mongols
  471.  
  472. In article <1992May14.194014.20619@oceania.com>, steve@oceania.com (Steve Dakin)
  473. writes:
  474. > In article <24774@goofy.Apple.COM> ksand@apple.com (Kent Sandvik) writes:
  475. > > Even better, take the two nice things from LISP and Smalltalk,
  476. > > dynamic binding and object messages, and you start to have a real
  477. > > killer language.
  478. > It sounds like you are talking about Objective-C...
  479.  
  480. Actually, I got my Objective-C package from the Apple Library a 
  481. day ago, and most likely I will write a review about this MPW package
  482. to any of the magazines that dares to publish my stuff :-).
  483.  
  484. I personally think that Objective-C really belongs to the static/
  485. Algol language thread, even if their notion of dynamic binding
  486. as part of the language is certainly nice. Compare with with C++
  487. where more of this binding has to be emulated just now with ugly
  488. runtime library support due to no standard today (yes, it will
  489. happen...). To some degree flexible dynamic library modules also
  490. emulate this, actually.
  491.  
  492. However the notion of dynamic object oriented languages also has
  493. other side-features, such as functions as first-class members,
  494. and especially typeless coding, something which is the total
  495. opposite of a C/Objective-C environment.
  496.  
  497. > > And as for parenthesis, that's a syntax issue, and we
  498. > > should really look into semantic issues.
  499.  
  500. > How do you feel about brackets? ([...])
  501.  
  502. How do you feel about curly brackets {}? Especially on a Swedish
  503. ASCII-7 keyboard...
  504.  
  505. Cheers,
  506. Kent
  507.  
  508. +++++++++++++++++++++++++++
  509.  
  510. From: ksand@apple.com (Kent Sandvik)
  511. Date: 17 May 92 22:39:00 GMT
  512. Organization: MacDTS Mongols
  513.  
  514. In article <1992May15.223308.18969@visix.com>, amanda@visix.com (Amanda Walker)
  515. writes:
  516. > ksand@apple.com (Kent Sandvik) writes:
  517. > > Even better, take the two nice things from LISP and Smalltalk,
  518. > > dynamic binding and object messages, and you start to have a real
  519. > > killer language.
  520.  
  521. > Ever looked at Self?  It's waaaaaaaay cool.  And it would be a natural on
  522. > the Macintosh...  Sort of a "RISC SmallTalk" with a killer incremental
  523. > compiler.
  524.  
  525. Yes, I have. Anyone doing a commercial version of Self? Just now it seems
  526. to be the academical sandbox where all the former Smalltalk people have 
  527. gathered around. But I'm still waiting for any more commercial
  528. implementations...
  529.  
  530. A lot of of the nice things with Self has to do with various lazy- optimizations
  531. (lazy compiling, lazy evaluation, lazy documentation writing, sorry wrong
  532. statement...).
  533.  
  534. Anyway, if we are talking about 'RISC-ish' languages, then Scheme is a LISP
  535. RISC language! The future looks bright, all we need now is more commercial
  536. interest in the future of application languages. I guess a couple more years
  537. of C++ will do it, and then the programmer rebel movement should begin :-).
  538.  
  539. Cheers,
  540. Kent
  541.  
  542. +++++++++++++++++++++++++++
  543.  
  544. From: ian@syacus.acus.oz.au (Ian Joyner)
  545. Organization: ACUS Australian Centre for Unisys Software, Sydney
  546. Date: Wed, 20 May 1992 02:17:25 GMT
  547.  
  548. ksand@apple.com (Kent Sandvik) writes:
  549.  
  550. >Anyway, if we are talking about 'RISC-ish' languages, then Scheme is a LISP
  551. >RISC language! The future looks bright, all we need now is more commercial
  552. >interest in the future of application languages. I guess a couple more years
  553. >of C++ will do it, and then the programmer rebel movement should begin :-).
  554.  
  555. Kent,
  556.  
  557. What do you mean 'then'? I have had enough of untidy languages like C++. The
  558. programmer rebel movement has already begun.
  559. - -- 
  560. Ian Joyner                                     ACSNet: ian@syacus.acus.oz
  561. ACUS (Australian Centre for Unisys Software)   Internet: ian@syacus.acus.oz.au
  562. 115-117 Wicks Rd, North Ryde, N.S.W, Australia 2113.
  563. Tel 61-2-390 1328      Fax 61-2-390 1391       UUCP: ...uunet!munnari!syacus.oz
  564.  
  565. +++++++++++++++++++++++++++
  566.  
  567. From: ksand@apple.com (Kent Sandvik)
  568. Date: 20 May 92 19:43:44 GMT
  569. Organization: MacDTS Mongols
  570.  
  571. In article <1992May20.021725.13732@syacus.acus.oz.au>, ian@syacus.acus.oz.au
  572. (Ian Joyner) writes:
  573. > ksand@apple.com (Kent Sandvik) writes:
  574. > >Anyway, if we are talking about 'RISC-ish' languages, then Scheme is a LISP
  575. > >RISC language! The future looks bright, all we need now is more commercial
  576. > >interest in the future of application languages. I guess a couple more years
  577. > >of C++ will do it, and then the programmer rebel movement should begin :-).
  578.  
  579. > What do you mean 'then'? I have had enough of untidy languages like C++. The
  580. > programmer rebel movement has already begun.
  581.  
  582. Yes, but it needs to gain momentum, and as long as we have all these 
  583. magazine blurbs writing glorifying articles about C++ use it will take
  584. some time before programmers realize that they have been tricked :-).
  585.  
  586. Once again, once the rebellion starts, let's select a language paradigm
  587. which is 100 times better than the current one, a major step is better
  588. than many, many minor ones. OODLs before OOSLs (OOSL - object oriented
  589. static language, OODL - object oriented dynamic language).
  590.  
  591. Yet again, these are my private comments, and yes I'm a C++ support
  592. engineer.
  593.  
  594. Cheers,
  595. Kent
  596.  
  597. +++++++++++++++++++++++++++
  598.  
  599. From: potts@itl.itd.umich.edu (Paul Potts)
  600. Date: 22 May 92 15:20:02 GMT
  601. Organization: Instructional Technology Laboratory, University of Michigan
  602.  
  603. In article <25292@goofy.Apple.COM> ksand@apple.com (Kent Sandvik) writes:
  604. ...
  605. >
  606. >Yes, but it needs to gain momentum, and as long as we have all these 
  607. >magazine blurbs writing glorifying articles about C++ use it will take
  608. >some time before programmers realize that they have been tricked :-).
  609. >
  610. >Once again, once the rebellion starts, let's select a language paradigm
  611. >which is 100 times better than the current one, a major step is better
  612. >than many, many minor ones. OODLs before OOSLs (OOSL - object oriented
  613. >static language, OODL - object oriented dynamic language).
  614. >
  615.  
  616. I'd love to try one out... right now I'm using C++ on the PC platform
  617. and THINK C on the Mac. Suppose you are a programmer like me that is
  618. interested in getting in on the OODL wave early. What languages
  619. would be appropriate to look at?  I've heard Scheme, Lisp, and
  620. Smalltalk mentioned. Any others? (And are any of them available as
  621. shareware or PD?) This all sounds interesting, but I'm certainly
  622. not ready to move all my development to LISP...
  623.  
  624.  
  625. - -- 
  626. Paul R. Potts, Software Designer --- potts@itl.itd.umich.edu <--- me!
  627.  
  628. +++++++++++++++++++++++++++
  629.  
  630. From: ksand@apple.com (Kent Sandvik)
  631. Date: 22 May 92 20:52:44 GMT
  632. Organization: MacDTS Mongols
  633.  
  634. In article <1992May22.152002.3381@terminator.cc.umich.edu>,
  635. potts@itl.itd.umich.edu (Paul Potts) writes:
  636. > In article <25292@goofy.Apple.COM> ksand@apple.com (Kent Sandvik) writes:
  637. > >Once again, once the rebellion starts, let's select a language paradigm
  638. > >which is 100 times better than the current one, a major step is better
  639. > >than many, many minor ones. OODLs before OOSLs (OOSL - object oriented
  640. > >static language, OODL - object oriented dynamic language).
  641.  
  642. > I'd love to try one out... right now I'm using C++ on the PC platform
  643. > and THINK C on the Mac. Suppose you are a programmer like me that is
  644. > interested in getting in on the OODL wave early. What languages
  645. > would be appropriate to look at?  I've heard Scheme, Lisp, and
  646. > Smalltalk mentioned. Any others? (And are any of them available as
  647. > shareware or PD?) This all sounds interesting, but I'm certainly
  648. > not ready to move all my development to LISP...
  649.  
  650.    It is true that we are just in the beginning of the future OODL 
  651. language world... Did that sound like something non-evangelistic? "Prepare,
  652. the day is soon here" sounds much better.
  653.  
  654.    Anyway, I would suggest to just now 'check out' how various Scheme
  655. systems, Macintosh Common Lisp, and SmallTalk looks like, and how
  656. to use them.
  657.  
  658.    In the case of Scheme, especially Scheme with object extensions, check
  659. out the public domain versions available on altorf.ai.mit.edu.
  660.  
  661.    MCl costs 495$US, it's a full CLOS implementation, so unless you don't
  662. get the money I'm not sure you could find a PD CLOS implementation that
  663. works directly under MacOS. Many PD systems which works under UNIX are
  664. easy to port over to A/UX, though.
  665.  
  666.    SmallTalk/V is a nice Smalltalk environment for private exploration.
  667.  
  668.    This all sounds very much as we are in the beginning of the OODL era,
  669. and that's actually the case. Reminds me of the C++ situation back in 85,
  670. and the case "for a better C". Things should happen quite fast, though,
  671. in future. I personally think the quest is for a common sense Common
  672. LISP, an environment which is not too complex, where a few key words
  673. builds a very complex environment. And where the syntax of LISP will
  674. not cause grief and harm, I mean the common 'too many parenthesis'
  675. syndrome :-). A combination of code generator, CASE tool, visual
  676. programming environment, real code hacking and performance coding
  677. using C as the ultimate tool is maybe something I'm personally envisioning.
  678.  
  679. And yes, no linker and compiler stages...
  680.  
  681. - --
  682.                                               Cheers, Kent
  683.  
  684.  
  685. +++++++++++++++++++++++++++
  686.  
  687. From: chandhok+@cs.cmu.edu (Ravinder Chandhok)
  688. Date: Wed, 27 May 92 15:54:11 GMT
  689. Organization: School of Computer Science, Carnegie Mellon
  690.  
  691. In article 39533 ksand@apple.com writes:
  692. >...
  693. >And as for parenthesis, that's a syntax issue, and we
  694. >should really look into semantic issues.
  695.  
  696. Sorry, I think syntax is *extremely* important for writing large systems
  697. that have to maintained over time.  Especially when the semantics allow for
  698. polymorphism, etc.  Do you like the way C++ comes out when you do operator
  699. overloading? 
  700.  
  701. Poo-pooing syntax as the "easy stuff" is not a good long term strategy, IMHO.
  702.  
  703. Rob
  704. - -- 
  705. Ravinder (Rob) Chandhok              Internet : chandhok+@cs.cmu.edu
  706. Carnegie Mellon University           AppleLink: A14
  707.  
  708.  
  709. +++++++++++++++++++++++++++
  710.  
  711. From: ksand@apple.com (Kent Sandvik)
  712. Date: 29 May 92 22:06:21 GMT
  713. Organization: MacDTS Mongols
  714.  
  715. In article <1992May27.155411.292582@cs.cmu.edu>, chandhok+@cs.cmu.edu (Ravinder
  716. Chandhok) writes:
  717. > In article 39533 ksand@apple.com writes:
  718.  
  719. > >And as for parenthesis, that's a syntax issue, and we
  720. > >should really look into semantic issues.
  721.  
  722. > Sorry, I think syntax is *extremely* important for writing large systems
  723. > that have to maintained over time.  Especially when the semantics allow for
  724. > polymorphism, etc.  Do you like the way C++ comes out when you do operator
  725. > overloading? 
  726.  
  727. > Poo-pooing syntax as the "easy stuff" is not a good long term strategy, IMHO.
  728.  
  729.    Here we disagree, it is true that C++ syntax is a big mess, no orthogonality
  730. whatever. However I've heard so many times statements such as "LISP stinks
  731. because it has too many parenthesis", while those who have used LISP-based
  732. languages for a while suddenly realizes the benefits of compound statements.
  733.  
  734.    In other words, looking at plain syntax without checking the power behind
  735. (semantics) is the wrong way to judge computer languages *).
  736.  
  737.    As for C++ operator overloading, "O, what a tangled web we weave,
  738. When first we practice to deceive" - Shakespeare.
  739.  
  740. - --
  741.                                               Cheers, Kent
  742.  
  743. *)I think APL fans would agree on this as well.
  744.  
  745. +++++++++++++++++++++++++++
  746.  
  747. From: chandhok+@cs.cmu.edu (Ravinder Chandhok)
  748. Date: Mon, 01 Jun 92 12:04:15 GMT
  749. Organization: School of Computer Science, Carnegie Mellon
  750.  
  751. In article 40153 ksand@apple.com writes:
  752. >...
  753. >   In other words, looking at plain syntax without checking the power behind
  754. >(semantics) is the wrong way to judge computer languages *).
  755. >...
  756. >*)I think APL fans would agree on this as well.
  757.  
  758. After realizing that the *) was not some new form of smiley that I didn't
  759. recognize...
  760.  
  761. My retort, of course, must be that looking at plain semantics without
  762. looking at the syntax is the wrong way to judge a computer language.  You
  763. can have the functionality of lisp without the obtuse syntax.  Ever try to
  764. explain the syntax of a COND statement to a novice?  Ever try to decypher
  765. (from the syntax) which is the nested local "function" inside a another
  766. defun in common lisp?  And, of course, do you actually *like* prefix
  767. notation for your arithmatic expressions?
  768.  
  769. >   As for C++ operator overloading, "O, what a tangled web we weave,
  770. >When first we practice to deceive" - Shakespeare.
  771.  
  772. Well said.  Or, well quoted. Shakespeare really knew his programming
  773. languages, eh?
  774.  
  775. - -- 
  776. Ravinder (Rob) Chandhok              Internet : chandhok+@cs.cmu.edu
  777. Carnegie Mellon University           AppleLink: A14
  778.  
  779.  
  780. +++++++++++++++++++++++++++
  781.  
  782. From: ksand@apple.com (Kent Sandvik)
  783. Date: 5 Jun 92 23:58:13 GMT
  784. Organization: MacDTS Mongols
  785.  
  786. In article <1992Jun01.120415.253372@cs.cmu.edu>, chandhok+@cs.cmu.edu (Ravinder
  787. Chandhok) writes:
  788. > >   In other words, looking at plain syntax without checking the power behind
  789. > >(semantics) is the wrong way to judge computer languages *).
  790. > My retort, of course, must be that looking at plain semantics without
  791. > looking at the syntax is the wrong way to judge a computer language.  You
  792. > can have the functionality of lisp without the obtuse syntax.  Ever try to
  793. > explain the syntax of a COND statement to a novice?  Ever try to decypher
  794. > (from the syntax) which is the nested local "function" inside a another
  795. > defun in common lisp?  And, of course, do you actually *like* prefix
  796. > notation for your arithmatic expressions?
  797.  
  798. As usually, it takes two to tango. Yes, it's a mixed balance of 
  799. syntax and semantics we are really dealing with. However my observation
  800. after years of language flaming is that people look at syntax issues
  801. without reflecting the underlying semantical issues.
  802.  
  803. "LISP has too many parenthesis". "C code stinks, it looks so cryptic".
  804. "BASIC programs stink, because they need line numbering". And so on.
  805.  
  806. As for the LISP criticism, yes, these are valid observations. Common
  807. LISP especially went overboard with nifty macros and all kinds of 
  808. separate ways to define libraries (good example is the myriad of loop
  809. systems out there today).
  810.  
  811. Scheme was a form of a mild protest, where the basic building blocks
  812. of the language are very primitive, but build a very nice and complex
  813. environment, to the extreme if needed. And there's no definition
  814. of how libraries should be defined, something which is a hinder
  815. for Scheme to become an industrial standard. C was partly sold 
  816. with the help of standard C libraries (and UNIX system call ones) to
  817. the commercial field. This is where Dylan has the class library
  818. well defined, it resembles the Smalltalk collection (everything
  819. is a class) design.
  820.  
  821. I agree that the binding of variables in LISP languages look weird,
  822. however when we look at the issues of local/global scope LISP has
  823. a far better way of defining the scope than traditional static
  824. languages.
  825.  
  826. I do like prefix notation, I'm a former HP-junkie, and Polish 
  827. notation is the natural way for CPUs to work anyway.
  828.  
  829. > >   As for C++ operator overloading, "O, what a tangled web we weave,
  830. > >When first we practice to deceive" - Shakespeare.
  831. > Well said.  Or, well quoted. Shakespeare really knew his programming
  832. > languages, eh?
  833.  
  834. Yeah, Shakespeare predicted C++ long time ago. Maybe I should write
  835. a soft cover book about this, to be found in the New Age section in the 
  836. book store next year.
  837.  
  838. - --
  839.                                               Cheerios, Kent
  840.  
  841.  
  842. ---------------------------
  843.  
  844. From: rsherman@mthvax.cs.miami.edu (Roby Sherman)
  845. Subject: Drawing on the MeNuBaR!
  846. Date: 26 May 92 15:37:26 GMT
  847. Organization: The Tao of Programming
  848.  
  849. Hi All.
  850.  
  851. What is the quickest, cleanest, and easiest way to draw on the menu bar?
  852.  
  853.  
  854.                         thanks in advace,
  855.  
  856.                        Roby
  857. - -- 
  858. rsherman@mthvax.cs.miami.edu                    Roby Sherman
  859.  
  860. +++++++++++++++++++++++++++
  861.  
  862. From: zobkiw@world.std.com (Joe Zobkiw)
  863. Date: 27 May 92 12:48:43 GMT
  864. Organization: The World Public Access UNIX, Brookline, MA
  865.  
  866. << What is the quickest, cleanest, and easiest way to draw on the menu bar?
  867. >>
  868.  
  869. Depending on what you are trying to accomplish, a patch to DrawMenuBar() 
  870. will always do the trick and seems to be a popular way of doing things.
  871. - -- 
  872. - -- joe zobkiw                      Internet: zobkiw@world.std.com
  873. - --                                      AOL: AFL Zobkiw  
  874. - -- mac.synthesis.MIDI.THINK C.OOP.asm   CI$: 70712,515 
  875. - -- communications.networks.cool tunes...
  876.  
  877. +++++++++++++++++++++++++++
  878.  
  879. From: mtc@henry.ece.cmu.edu (Magnetic Technology Center)
  880. Organization: not yet ...
  881. Date: Thu, 28 May 1992 17:13:21 GMT
  882.  
  883. [???]
  884. [] What is the quickest, cleanest, and easiest way to draw on the menu bar?
  885.  
  886. [<Bowu98.D54@world.std.com> zobkiw@world.std.com (Joe Zobkiw) replies:]
  887. [] Depending on what you are trying to accomplish, a patch to DrawMenuBar() 
  888. [] will always do the trick and seems to be a popular way of doing things.
  889.  
  890. true, however you want to avoid trap patching as a solution, in general!!!
  891. the popularity of trap patching is now passed its peak (with the advent
  892. of multifinder and improved system software, etc.).
  893.  
  894. the original question is too vague to give a definite answer but ...
  895. at least understand that the menubar is just a specially maintained
  896. region on the screen.  perhaps the solution to your problem lies in
  897. understanding how the window and menu managers conspire to maintain
  898. this region (umm, read Inside Macintosh and Tech Notes :().  with
  899. this approach, who knows?, maybe your hack will be compatible ...
  900.  
  901.   -dave-  aka no-trap-patch-man!
  902. mtc@henry.ece.cmu.edu
  903.  
  904. "If it ain't broken, don't patch it."
  905.  
  906. [note: trap patches can be safe and effective if used properly.
  907.   however, frequent usage may be dangerous to the health of your mac.]
  908.  
  909. [... yes that's an "a", dammit! ...]
  910.  
  911. +++++++++++++++++++++++++++
  912.  
  913. From: paul@taniwha.UUCP (Paul Campbell)
  914. Date: 30 May 92 03:04:21 GMT
  915. Organization: Taniwha Systems Design
  916.  
  917. In article <vtlvmINN279@mthvax.cs.miami.edu> rsherman@mthvax.cs.miami.edu (Roby Sherman) writes:
  918. >Hi All.
  919. >
  920. >What is the quickest, cleanest, and easiest way to draw on the menu bar?
  921.  
  922. Umm ... a felt pen?
  923.  
  924.     Paul
  925. - -- 
  926. Paul Campbell    UUCP: ..!mtxinu!taniwha!paul     AppleLink: CAMPBELL.P
  927. It's not as well known that 3 days before George Bush puked in the Japanese
  928. Prime Minister's lap our great statesman and diplomat accidently gave the
  929. finger to a whole nation ....
  930.  
  931. +++++++++++++++++++++++++++
  932.  
  933. From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
  934. Date: 4 Jun 92 05:55:47 GMT
  935. Organization: University of Waikato, Hamilton, New Zealand
  936.  
  937. In article <1119@taniwha.UUCP>, paul@taniwha.UUCP (Paul Campbell) writes:
  938. > In article <vtlvmINN279@mthvax.cs.miami.edu> rsherman@mthvax.cs.miami.edu (Roby Sherman) writes:
  939. >>Hi All.
  940. >>
  941. >>What is the quickest, cleanest, and easiest way to draw on the menu bar?
  942. >
  943. > Umm ... a felt pen?
  944.  
  945. Hey, he asked for the *cleanest* way!!!
  946.  
  947. All right, make that a write'n'wipe felt pen...
  948.  
  949. Lawrence D'Oliveiro                       fone: +64-7-856-2889
  950. Computer Services Dept                     fax: +64-7-838-4066
  951. University of Waikato            electric mail: ldo@waikato.ac.nz
  952. Hamilton, New Zealand    37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00
  953.  
  954. +++++++++++++++++++++++++++
  955.  
  956. From: geck@plasma.icsl.ucla.edu (William Ross Geck)
  957. Date: 6 Jun 92 00:38:08 GMT
  958. Organization: University of California at Los Angeles, EE Dept.
  959.  
  960. In article <1992Jun4.175547.8426@waikato.ac.nz> ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) writes:
  961. >In article <1119@taniwha.UUCP>, paul@taniwha.UUCP (Paul Campbell) writes:
  962. >> In article <vtlvmINN279@mthvax.cs.miami.edu> rsherman@mthvax.cs.miami.edu (Roby Sherman) writes:
  963. >>>Hi All.
  964. >>>
  965. >>>What is the quickest, cleanest, and easiest way to draw on the menu bar?
  966. >>
  967. >> Umm ... a felt pen?
  968. >
  969. >Hey, he asked for the *cleanest* way!!!
  970. >
  971. >All right, make that a write'n'wipe felt pen...
  972. >
  973. >Lawrence D'Oliveiro                       fone: +64-7-856-2889
  974. >Computer Services Dept                     fax: +64-7-838-4066
  975. >University of Waikato            electric mail: ldo@waikato.ac.nz
  976. >Hamilton, New Zealand    37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00
  977.  
  978. Seriously. . . 
  979.  
  980. Quite some time ago, before I discovered the trick with setting the height
  981. of the menu bar to zero, I would add the menu bar to the clip and visable 
  982. regions of my window before drawing there.  The reason that you normaly 
  983. couldn't draw there is that the menu region is always subtracted from 
  984. the window's visible region, and of course all drawing is clipped to that 
  985. region.  I have tested the program I did this in since I have begun using 
  986. System 7, so I know it still works (or at least while the application is 
  987. in the forground).  Also, when receiving mousedown events, if it says it 
  988. is in the menu bar, check to see if it is also in your window before 
  989. calling menu routines.  
  990.  
  991. I hope this actually answers the original question :)
  992.  
  993. W. Ross Geck
  994. geck@plasma.icsl.ucla.edu
  995.  
  996. ---------------------------
  997.  
  998. From: David.Berger@bbs.oit.unc.edu (David Berger)
  999. Subject: Latest Inside Mac Printings?
  1000. Date: 4 Jun 92 14:05:33 GMT
  1001. Organization: 3D Software
  1002.  
  1003. Could someone inform me of the latest printing versions
  1004. of each of the Inside Macintosh Volumes?
  1005.  
  1006. Are there any drastic changes with them from older versions?
  1007. What new Managers has Apple changed to in the past year or two?
  1008.  
  1009. Thanx.
  1010.  
  1011. David Berger
  1012. 3D Software
  1013. dberger@usc.pppl.gov
  1014.  
  1015.  
  1016. - --
  1017.    The opinions expressed are not necessarily those of the University of
  1018.      North Carolina at Chapel Hill, the Campus Office for Information
  1019.         Technology, or the Experimental Bulletin Board Service.
  1020.            internet:  bbs.oit.unc.edu or 152.2.22.80
  1021.  
  1022. +++++++++++++++++++++++++++
  1023.  
  1024. From: ksand@apple.com (Kent Sandvik)
  1025. Date: 5 Jun 92 23:48:51 GMT
  1026. Organization: MacDTS Mongols
  1027.  
  1028. In article <1992Jun4.140533.20650@samba.oit.unc.edu>,
  1029. David.Berger@bbs.oit.unc.edu (David Berger) writes:
  1030. > Could someone inform me of the latest printing versions
  1031. > of each of the Inside Macintosh Volumes?
  1032.  
  1033. > Are there any drastic changes with them from older versions?
  1034. > What new Managers has Apple changed to in the past year or two?
  1035.  
  1036. Well, my humble advice would be to use Inside Mac VI as the prime
  1037. book, and switch over to older versions when nothing is explained,
  1038. and also look at the TNs just to make sure that this issue is not 
  1039. also covered by a Tech Note. 
  1040.  
  1041. Note, there's only one revision of the Inside Macintosh versions, the
  1042. only book that has changed is the X-Ref (of course, I'm not that dumb!).
  1043.  
  1044. - --
  1045.                                               Cheers, Kent
  1046.  
  1047.  
  1048. ---------------------------
  1049.  
  1050. End of C.S.M.P. Digest
  1051. **********************
  1052.